// var encryptRoundKeys={
//     "0": 2615698777,
//     "1": 2788935463,
//     "2": 3497622499,
//     "3": 1788654098,
//     "4": 4183254308,
//     "5": 1820784068,
//     "6": 2094938868,
//     "7": 3301063251,
//     "8": 3107256341,
//     "9": 1594224700,
//     "10": 142606450,
//     "11": 516629961,
//     "12": 788593773,
//     "13": 2078732848,
//     "14": 2980268046,
//     "15": 2798705885,
//     "16": 1855651285,
//     "17": 2542085819,
//     "18": 1862059521,
//     "19": 1266859094,
//     "20": 293981496,
//     "21": 3232145720,
//     "22": 1800457868,
//     "23": 393421813,
//     "24": 3608591203,
//     "25": 497208042,
//     "26": 2254379384,
//     "27": 1196878423,
//     "28": 598037690,
//     "29": 1685626069,
//     "30": 3662564248,
//     "31": 2648349557
// }
var Vo = [
    "A",
    "B",
    "C",
    "D",
    "E",
    "F",
    "G",
    "H",
    "I",
    "J",
    "K",
    "L",
    "M",
    "N",
    "O",
    "P",
    "Q",
    "R",
    "S",
    "T",
    "U",
    "V",
    "W",
    "X",
    "Y",
    "Z",
    "a",
    "b",
    "c",
    "d",
    "e",
    "f",
    "g",
    "h",
    "i",
    "j",
    "k",
    "l",
    "m",
    "n",
    "o",
    "p",
    "q",
    "r",
    "s",
    "t",
    "u",
    "v",
    "w",
    "x",
    "y",
    "z",
    "0",
    "1",
    "2",
    "3",
    "4",
    "5",
    "6",
    "7",
    "8",
    "9",
    "+",
    "/"
];
var to = 16;
var Ni = {
    "0": 2746333894,
    "1": 1453994832,
    "2": 1736282519,
    "3": 2993693404
};
var Li = {
    "0": 214,
    "1": 144,
    "2": 233,
    "3": 254,
    "4": 204,
    "5": 225,
    "6": 61,
    "7": 183,
    "8": 22,
    "9": 182,
    "10": 20,
    "11": 194,
    "12": 40,
    "13": 251,
    "14": 44,
    "15": 5,
    "16": 43,
    "17": 103,
    "18": 154,
    "19": 118,
    "20": 42,
    "21": 190,
    "22": 4,
    "23": 195,
    "24": 170,
    "25": 68,
    "26": 19,
    "27": 38,
    "28": 73,
    "29": 134,
    "30": 6,
    "31": 153,
    "32": 156,
    "33": 66,
    "34": 80,
    "35": 244,
    "36": 145,
    "37": 239,
    "38": 152,
    "39": 122,
    "40": 51,
    "41": 84,
    "42": 11,
    "43": 67,
    "44": 237,
    "45": 207,
    "46": 172,
    "47": 98,
    "48": 228,
    "49": 179,
    "50": 28,
    "51": 169,
    "52": 201,
    "53": 8,
    "54": 232,
    "55": 149,
    "56": 128,
    "57": 223,
    "58": 148,
    "59": 250,
    "60": 117,
    "61": 143,
    "62": 63,
    "63": 166,
    "64": 71,
    "65": 7,
    "66": 167,
    "67": 252,
    "68": 243,
    "69": 115,
    "70": 23,
    "71": 186,
    "72": 131,
    "73": 89,
    "74": 60,
    "75": 25,
    "76": 230,
    "77": 133,
    "78": 79,
    "79": 168,
    "80": 104,
    "81": 107,
    "82": 129,
    "83": 178,
    "84": 113,
    "85": 100,
    "86": 218,
    "87": 139,
    "88": 248,
    "89": 235,
    "90": 15,
    "91": 75,
    "92": 112,
    "93": 86,
    "94": 157,
    "95": 53,
    "96": 30,
    "97": 36,
    "98": 14,
    "99": 94,
    "100": 99,
    "101": 88,
    "102": 209,
    "103": 162,
    "104": 37,
    "105": 34,
    "106": 124,
    "107": 59,
    "108": 1,
    "109": 33,
    "110": 120,
    "111": 135,
    "112": 212,
    "113": 0,
    "114": 70,
    "115": 87,
    "116": 159,
    "117": 211,
    "118": 39,
    "119": 82,
    "120": 76,
    "121": 54,
    "122": 2,
    "123": 231,
    "124": 160,
    "125": 196,
    "126": 200,
    "127": 158,
    "128": 234,
    "129": 191,
    "130": 138,
    "131": 210,
    "132": 64,
    "133": 199,
    "134": 56,
    "135": 181,
    "136": 163,
    "137": 247,
    "138": 242,
    "139": 206,
    "140": 249,
    "141": 97,
    "142": 21,
    "143": 161,
    "144": 224,
    "145": 174,
    "146": 93,
    "147": 164,
    "148": 155,
    "149": 52,
    "150": 26,
    "151": 85,
    "152": 173,
    "153": 147,
    "154": 50,
    "155": 48,
    "156": 245,
    "157": 140,
    "158": 177,
    "159": 227,
    "160": 29,
    "161": 246,
    "162": 226,
    "163": 46,
    "164": 130,
    "165": 102,
    "166": 202,
    "167": 96,
    "168": 192,
    "169": 41,
    "170": 35,
    "171": 171,
    "172": 13,
    "173": 83,
    "174": 78,
    "175": 111,
    "176": 213,
    "177": 219,
    "178": 55,
    "179": 69,
    "180": 222,
    "181": 253,
    "182": 142,
    "183": 47,
    "184": 3,
    "185": 255,
    "186": 106,
    "187": 114,
    "188": 109,
    "189": 108,
    "190": 91,
    "191": 81,
    "192": 141,
    "193": 27,
    "194": 175,
    "195": 146,
    "196": 187,
    "197": 221,
    "198": 188,
    "199": 127,
    "200": 17,
    "201": 217,
    "202": 92,
    "203": 65,
    "204": 31,
    "205": 16,
    "206": 90,
    "207": 216,
    "208": 10,
    "209": 193,
    "210": 49,
    "211": 136,
    "212": 165,
    "213": 205,
    "214": 123,
    "215": 189,
    "216": 45,
    "217": 116,
    "218": 208,
    "219": 18,
    "220": 184,
    "221": 229,
    "222": 180,
    "223": 176,
    "224": 137,
    "225": 105,
    "226": 151,
    "227": 74,
    "228": 12,
    "229": 150,
    "230": 119,
    "231": 126,
    "232": 101,
    "233": 185,
    "234": 241,
    "235": 9,
    "236": 197,
    "237": 110,
    "238": 198,
    "239": 132,
    "240": 24,
    "241": 240,
    "242": 125,
    "243": 236,
    "244": 58,
    "245": 220,
    "246": 77,
    "247": 32,
    "248": 121,
    "249": 238,
    "250": 95,
    "251": 62,
    "252": 215,
    "253": 203,
    "254": 57,
    "255": 72
}
var n$e = {
    "0": 462357,
    "1": 472066609,
    "2": 943670861,
    "3": 1415275113,
    "4": 1886879365,
    "5": 2358483617,
    "6": 2830087869,
    "7": 3301692121,
    "8": 3773296373,
    "9": 4228057617,
    "10": 404694573,
    "11": 876298825,
    "12": 1347903077,
    "13": 1819507329,
    "14": 2291111581,
    "15": 2762715833,
    "16": 3234320085,
    "17": 3705924337,
    "18": 4177462797,
    "19": 337322537,
    "20": 808926789,
    "21": 1280531041,
    "22": 1752135293,
    "23": 2223739545,
    "24": 2695343797,
    "25": 3166948049,
    "26": 3638552301,
    "27": 4110090761,
    "28": 269950501,
    "29": 741554753,
    "30": 1213159005,
    "31": 1684763257
};
var Ed = {}

function Axe(e) {
    return Vo[e >> 18 & 63] + Vo[e >> 12 & 63] + Vo[e >> 6 & 63] + Vo[e & 63]
}

function Txe(e, t, n) {
    for (var o, r = [], s = t; s < n; s += 3)
        o = (e[s] << 16 & 16711680) + (e[s + 1] << 8 & 65280) + (e[s + 2] & 255),
            r.push(Axe(o));
    return r.join("")
}

function Bxe(e) {
    for (var t, n = e.length, o = n % 3, r = [], s = 16383, a = 0, l = n - o; a < l; a += s)
        r.push(Txe(e, a, a + s > l ? l : a + s));
    return o === 1 ? (t = e[n - 1],
        r.push(Vo[t >> 2] + Vo[t << 4 & 63] + "==")) : o === 2 && (t = (e[n - 2] << 8) + e[n - 1],
        r.push(Vo[t >> 10] + Vo[t >> 4 & 63] + Vo[t << 2 & 63] + "=")),
        r.join("")
}


class e$e {
    static stringToArrayBufferInUtf8(t) {
        const n = typeof window == "undefined" ? Ed.TextEncoder : window.TextEncoder;
        return new TextEncoder().encode(t)
    }

    static utf8ArrayBufferToString(t) {
        const n = typeof window == "undefined" ? Ed.TextDecoder : window.TextDecoder;
        return new n("utf-8").decode(t)
    }

    static arrayBufferToBase64(t) {
        return Bxe(t)
    }

    static base64ToArrayBuffer(t) {
        return kxe(t)
    }
}

var t$e = e$e;
const Er = t$e

function ec() {
    const e = ["zw5J", "zw5JCNLWDa", "yMfZzty0", "zxHJzxb0Aw9U", "otiYotCWmhz2rw9kDG", "quvt", "yMLUza", "zwnI", "runc", "qJyQndaUmL9dosnLncrfmW", "mtG5ndbisuzetfy", "E30Uy29UC3rYDwn0B3iOiNjLDhvYBIb0AgLZiIKOicK", "CMv0DxjUicHMDw5JDgLVBIGPia", "Dg9vChbLCKnHC2u", "y2LWAgvYvhLWzq", "mJm5nZCYBKfbwMHz", "DgfIBgu", "DhjHy2u", "CgfYC2u", "y2LWAgvYDgv4Da", "D2fYBG", "C200", "mJDyu0PQrvi", "CgfK", "nKTqrKjbsq", "yxbWBhK", "ugTJCZC", "A2v5", "vxrMoa", "Dg9tDhjPBMC", "y29UC29Szq", "y29UC3rYDwn0B3i", "mJm5mdeZrxHODe1X", "zxjYB3i", "mte0mJm2mtzdr3DcDxC", "ntq5mdCXnunLuKLmCa", "Bw9Kzq", "oti0ExvVqLz1", "nZKXodq4ngL4tMTyza", "Aw5MBW"];
    return ec = function () {
        return e
    }
        ,
        ec()
}

function xo(e, t) {
    const n = ec();
    return xo = function (o, r) {
        o = o - 120;
        let s = n[o];
        if (xo.idKtwU === void 0) {
            var a = function (c) {
                const f = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=";
                let d = ""
                    , p = "";
                for (let h = 0, x, v, b = 0; v = c.charAt(b++); ~v && (x = h % 4 ? x * 64 + v : v,
                h++ % 4) ? d += String.fromCharCode(255 & x >> (-2 * h & 6)) : 0)
                    v = f.indexOf(v);
                for (let h = 0, x = d.length; h < x; h++)
                    p += "%" + ("00" + d.charCodeAt(h).toString(16)).slice(-2);
                return decodeURIComponent(p)
            };
            xo.fPymSp = a,
                e = arguments,
                xo.idKtwU = !![]
        }
        const l = n[0]
            , i = o + l
            , u = e[i];
        return u ? s = u : (s = xo.fPymSp(s),
            e[i] = s),
            s
    }
        ,
        xo(e, t)
}

class o$e {
    constructor(t) {
        let n = Er.stringToArrayBufferInUtf8(t.key);
        if (n.length !== 16)
            throw new Error("key should be a 16 bytes string");
        this.key = n;
        let o = new Uint8Array(0);
        if (t.iv !== void 0 && t.iv !== null && (o = Er.stringToArrayBufferInUtf8(t.iv),
        o.length !== 16))
            throw new Error("iv should be a 16 bytes string");
        this.iv = o,
            this.mode = "cbc",
        ["cbc", "ecb"].indexOf(t.mode) >= 0 && (this.mode = t.mode),
            this.cipherType = "base64",
        ["base64", "text"].indexOf(t.outType) >= 0 && (this.cipherType = t.outType),
            this.encryptRoundKeys = new Uint32Array(32),
            // this.encryptRoundKeys = encryptRoundKeys,
            this.spawnEncryptRoundKeys(),
            this.decryptRoundKeys = Uint32Array.from(this.encryptRoundKeys),
            this.decryptRoundKeys.reverse()
    }

    doBlockCrypt(t, n) {
        let o = new Uint32Array(36);
        o.set(t, 0);
        for (let s = 0; s < 32; s++)
            o[s + 4] = o[s] ^ this.tTransform1(o[s + 1] ^ o[s + 2] ^ o[s + 3] ^ n[s]);
        let r = new Uint32Array(4);
        return r[0] = o[35],
            r[1] = o[34],
            r[2] = o[33],
            r[3] = o[32],
            r
    }

    spawnEncryptRoundKeys() {
        let t = new Uint32Array(4);
        t[0] = this.key[0] << 24 | this.key[1] << 16 | this.key[2] << 8 | this.key[3],
            t[1] = this.key[4] << 24 | this.key[5] << 16 | this.key[6] << 8 | this.key[7],
            t[2] = this.key[8] << 24 | this.key[9] << 16 | this.key[10] << 8 | this.key[11],
            t[3] = this.key[12] << 24 | this.key[13] << 16 | this.key[14] << 8 | this.key[15];
        let n = new Uint32Array(36);
        n[0] = t[0] ^ Ni[0],
            n[1] = t[1] ^ Ni[1],
            n[2] = t[2] ^ Ni[2],
            n[3] = t[3] ^ Ni[3];
        for (let o = 0; o < 32; o++)
            n[o + 4] = n[o] ^ this.tTransform2(n[o + 1] ^ n[o + 2] ^ n[o + 3] ^ n$e[o]),
                this.encryptRoundKeys[o] = n[o + 4]
    }

    rotateLeft(t, n) {
        return t << n | t >>> 32 - n
    }

    linearTransform1(t) {
        return t ^ this.rotateLeft(t, 2) ^ this.rotateLeft(t, 10) ^ this.rotateLeft(t, 18) ^ this.rotateLeft(t, 24)
    }

    linearTransform2(t) {
        return t ^ this.rotateLeft(t, 13) ^ this.rotateLeft(t, 23)
    }

    tauTransform(t) {
        return Li[t >>> 24 & 255] << 24 | Li[t >>> 16 & 255] << 16 | Li[t >>> 8 & 255] << 8 | Li[t & 255]
    }

    tTransform1(t) {
        let n = this.tauTransform(t);
        return this.linearTransform1(n)
    }

    tTransform2(t) {
        let n = this.tauTransform(t);
        return this.linearTransform2(n)
    }

    padding(t) {
        if (t === null)
            return null;
        let n = to - t.length % to
            , o = new Uint8Array(t.length + n);
        return o.set(t, 0),
            o.fill(n, t.length),
            o
    }

    dePadding(t) {
        if (t === null)
            return null;
        let n = t[t.length - 1];
        return t.slice(0, t.length - n)
    }

    uint8ToUint32Block(t, n = 0) {
        let o = new Uint32Array(4);
        return o[0] = t[n] << 24 | t[n + 1] << 16 | t[n + 2] << 8 | t[n + 3],
            o[1] = t[n + 4] << 24 | t[n + 5] << 16 | t[n + 6] << 8 | t[n + 7],
            o[2] = t[n + 8] << 24 | t[n + 9] << 16 | t[n + 10] << 8 | t[n + 11],
            o[3] = t[n + 12] << 24 | t[n + 13] << 16 | t[n + 14] << 8 | t[n + 15],
            o
    }

    encrypt(t) {
        let n = Er.stringToArrayBufferInUtf8(t)
            , o = this.padding(n)
            , r = o.length / to
            , s = new Uint8Array(o.length);
        if (this.mode === "cbc") {
            if (this.iv === null || this.iv.length !== 16)
                throw new Error("iv error");
            let a = this.uint8ToUint32Block(this.iv);
            for (let l = 0; l < r; l++) {
                let i = l * to
                    , u = this.uint8ToUint32Block(o, i);
                a[0] = a[0] ^ u[0],
                    a[1] = a[1] ^ u[1],
                    a[2] = a[2] ^ u[2],
                    a[3] = a[3] ^ u[3];
                let c = this.doBlockCrypt(a, this.encryptRoundKeys);
                a = c;
                for (let f = 0; f < to; f++)
                    s[i + f] = c[parseInt(f / 4)] >> (3 - f) % 4 * 8 & 255
            }
        } else
            for (let a = 0; a < r; a++) {
                let l = a * to
                    , i = this.uint8ToUint32Block(o, l)
                    , u = this.doBlockCrypt(i, this.encryptRoundKeys);
                for (let c = 0; c < to; c++)
                    s[l + c] = u[parseInt(c / 4)] >> (3 - c) % 4 * 8 & 255
            }
        return this.cipherType === "base64" ? Er.arrayBufferToBase64(s) : Er.utf8ArrayBufferToString(s)
    }

    decrypt(t) {
        let n = new Uint8Array;
        this.cipherType === "base64" ? n = Er.base64ToArrayBuffer(t) : n = Er.stringToArrayBufferInUtf8(t);
        let o = n.length / to
            , r = new Uint8Array(n.length);
        if (this.mode === "cbc") {
            if (this.iv === null || this.iv.length !== 16)
                throw new Error("iv error");
            let a = this.uint8ToUint32Block(this.iv);
            for (let l = 0; l < o; l++) {
                let i = l * to
                    , u = this.uint8ToUint32Block(n, i)
                    , c = this.doBlockCrypt(u, this.decryptRoundKeys)
                    , f = new Uint32Array(4);
                f[0] = a[0] ^ c[0],
                    f[1] = a[1] ^ c[1],
                    f[2] = a[2] ^ c[2],
                    f[3] = a[3] ^ c[3],
                    a = u;
                for (let d = 0; d < to; d++)
                    r[i + d] = f[parseInt(d / 4)] >> (3 - d) % 4 * 8 & 255
            }
        } else
            for (let a = 0; a < o; a++) {
                let l = a * to
                    , i = this.uint8ToUint32Block(n, l)
                    , u = this.doBlockCrypt(i, this.decryptRoundKeys);
                for (let c = 0; c < to; c++)
                    r[l + c] = u[parseInt(c / 4)] >> (3 - c) % 4 * 8 & 255
            }
        let s = this.dePadding(r);
        return Er.utf8ArrayBufferToString(s)
    }
}

function c$e() {
    const e = xo
        , t = {};
    t['key'] = "B6*40.2_C9#e4$E3",
        t.mode = 'ecb',
        t['cipherType'] = 'base64';
    const n = t
        , o = o$e;
    return new o(n)
}

const JSEncrypt = require('node-jsencrypt');

publicKey = 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC29miF1Wp9XlhCECo+FYpCHad1ipEMgXf4IdgYjMIQwczzo9GXdcZ4eeV+9lkh6+aTqzzU843rdkMt0vrSnujU+GOuDPLfa5LZ6SfanAoysi6xxTX02Xizb3k+Z1USIzm9QAwE+SR1AQ78rGTRFHWFu7OGPkVNeF+vrX3inQTiawIDAQAB';

function p$e(e) {
    const n = new JSEncrypt();
    n.setPublicKey(publicKey);
    const o = 117
        , r = Math['ceil'](e['length'] / o);
    let s = [];
    for (let a = 0; a < r; a++) {
        const l = e['slice'](a * o, (a + 1) * o)
            , i = n.encrypt(l);
        s['push'](i)
    }
    return s['join'](",")
}

// // 引用 node-rsa 加密模块
// var NodeRSA = require('node-rsa');
// function rsaEncrypt(text) {
//     pubKey = new NodeRSA(publicKey,'pkcs8-public');
//     var encryptedData = pubKey.encrypt(text, 'base64');
//     return encryptedData
// }
// // console.log(params)
par = {
    "key": "query"
}
function rsa_enc(par){
    const s = c$e().encrypt(typeof par == "object" ? JSON.stringify(par) : par)


    res=p$e(s)

    return res
}
res=rsa_enc(par)
// console.log(res)